#ifndef FONCTION_HPP
#define FONCTION_HPP
#include <iostream>
#include <vector>
#include "Type.hpp"
#include "Symbole.hpp"
#include "TableSymb.hpp"


using namespace std;

class Niveau
{
private:
  //vecteur de table des symboles
  vector<TableSymb> tablesSymb;

  //todo get 
public:
  Niveau(); 
  /*  static Niveau& getInstanceOf(){
    static Niveau instance;
    return instance;
    }*/
  const void push(TableSymb);
  const vector<TableSymb> getTablesSymb();
  const TableSymb current();
  
  //rechercher un symbole dans les tables des symoboles
  const Symbole* find(unsigned int);
  const Symbole* findInCurrent(unsigned int);

  
  ~Niveau();
};

#endif
